In information technology and systems management, a maintenance window is a period of time designated in advance by the technical staff, during which preventive maintenance that could cause disruption of service may be performed.
For a high-availability service, such as an Internet hosting service or Internet service provider, the purpose of stating a time period in advance is to allow clients of the service to prepare for possible disruption or prepare for any major changes to the functioning of the service. This type of disclosure is typically guaranteed as part of a service level agreement.
High-availability maintenance windows are often planned for a time where activity is at its lowest so as to cause minimal disruption to customers, though which also require unusual work schedules for the employees. An ISP for example may schedule a maintenance window for Sunday from 1 AM to 5 AM.
In schools and businesses with more than approximately 50-200 desktop computers, the information technology staff may use management software to automatically install software updates during off-hours when the school or business is closed or at low activity.
Such scheduled updates can include Windows Updates, antivirus software definition updates, software version upgrades for Adobe Flash, Adobe Reader, Apple QuickTime, Sun Java, and so forth. By performing these updates during the night, the computers are not slowed down by trying to perform updates randomly during the day when employees are working with computers.
Where disk protection software such as Faronics Deep Freeze is used, protective services such as a scheduled system scan at each reboot can be turned off, thereby accelerating the boot process for users during the day. Instead, a full virus scan is scheduled during the maintenance window, but is unneeded at each startup.
Using a maintenance window requires increased specialization of skill of the IT staff, and requires a certain amount of time set up, test, and deploy. For small businesses with only a few employees, it may be simpler to just go around and manually apply updates at each computer, rather than spending hours trying to set up deployment through a maintenance window.